package cfg

type PostDataJson struct {
	Jsonrpc string `json:"jsonrpc"`
	Method  string `json:"method"`
	Params  Params `json:"params"`
	Id      int    `json:"id"`
	Auth    string `json:"auth,omitempty"`
}

type Params struct {
	User             string   `json:"user,omitempty"`
	Password         string   `json:"password,omitempty"`
	Output           []string `json:"output,omitempty"`
	SelectInterfaces []string `json:"selectInterfaces,omitempty"`
	Hostids          []string `json:"hostids,omitempty"`
}

type ReturnTokenJson struct {
	Jsonrpc string `json:"jsonrpc"`
	Result  string `json:"result"`
	Id      int    `json:"id"`
}

type ReturnHostJson struct {
	Jsonrpc string `json:"jsonrpc"`
	Result  []struct {
		Hostid     string `json:"hostid"`
		Host       string `json:"host"`
		Interfaces []struct {
			Interfaceid string `json:"interfaceid"`
			IP          string `json:"ip"`
		} `json:"interfaces"`
	} `json:"result"`
	ID int `json:"id"`
}

type ReturnHostJsonResult []struct {
	Hostid     string `json:"hostid"`
	Host       string `json:"host"`
	Interfaces []struct {
		Interfaceid string `json:"interfaceid"`
		IP          string `json:"ip"`
	} `json:"interfaces"`
}
